// 全局封装axios请求模块
import axios from 'axios'
// 引入vuex
import store from '../store/index'
// 如果一个项目中有多个基础路径的配置时，
// axios.create()通过axios实例创建基本请求对象
// 通过request进行按需导出，使用时用import {} 按需导入
export const request = axios.create({
  baseURL: 'http://toutiao.itheima.net/' // 基础路径
})

// 添加请求拦截器
request.interceptors.request.use(config => {
  // 在发送请求之前做些什么
  // 判断当前是否已登录，如果已登录就将token设置到headers（通过vuex中是否有user.token来实现)
  if (store.state.user.token) {
    config.headers.Authorization = `Bearer ${store.state.user.token}`
  }
  return config
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error)
})
